package com.zb.excel.export.service;

import com.zb.vo.CodeListSelectVo;
import com.zb.vo.GoodsSelectVo;
import com.zb.vo.UserSelectVo;

import javax.servlet.http.HttpServletResponse;

/**
 * 数据导出服务类
 * @Author WEN
 * @Date 2023/9/9 0009
 **/
public interface DataExportService {
    /**
     * 根据编码批次ID导出所有编码
     * @param batchId 批次ID
     * @param suffixExtension excel文件扩展名
     */
    void codeBatchExportExcel(HttpServletResponse response, Long batchId, String suffixExtension) ;

    /**
     * 编码批次导出文本Txt
     * @param response
     * @param batchId 批次ID
     */
    void codeBatchExportTxt(HttpServletResponse response, Long batchId);

    /**
     * 客户导出Excel
     *
     * @param response
     * @param custAccId 商家ID
     * @param selectVo  搜索条件
     */
    void userExportExcel(HttpServletResponse response, Long custAccId, UserSelectVo selectVo);

    /**
     * 商品导出Excel
     * @param response
     * @param custAccId 商家ID
     * @param type 类型：1-成品，2-配件
     * @param selectVo 搜索条件
     */
    void goodsExportExcel(HttpServletResponse response, Long custAccId, Integer type, GoodsSelectVo selectVo);

    /**
     * 一物一码导出Excel
     * @param response
     * @param custAccId 商家ID
     * @param selectVo
     */
    void codeExportExcel(HttpServletResponse response, Long custAccId, CodeListSelectVo selectVo);
}
